﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AccesoDatos.Manejador;
using AccesoDatos.Objetos;

namespace Autorizacion_facturas_caja.Infonavit
{
    public partial class frmInfonavit_Busqueda_Captura : Form
    {
        Manejador_Infonavit MI = new Manejador_Infonavit();
        Manejador_Empleado_Captura Mane = new Manejador_Empleado_Captura();
        public objRH obj1 = new objRH();
        objInfonavit obj = new objInfonavit();

        #region FUNCIONES
        public frmInfonavit_Busqueda_Captura()
        {
            InitializeComponent();
            ObtieneDatosCombo();
        }

        private void ObtieneDatosCombo()
        {
            //Obtiene los datos de la tabla cat_sucursales al combo de sucursales
            cmbSucursal.DataSource = Mane.ObtieneSucursales();
            cmbSucursal.ValueMember = "SucId";
            cmbSucursal.DisplayMember = "Nombre";
        }

        private void buscar()
        {
            obj1.Buscar = txtBuscar.Text.Trim();
            obj1.SucId = cmbSucursal.SelectedValue.ToString();
            if (cBTodas.Checked == true) { obj1.SucId = "0"; }
            dataGridView1.DataSource = MI.ListaNoInfonavit(obj1.Buscar, obj1.SucId);
        }

        private void propiedadesColumnas()
        {
            //QUITA LA PRIMERA COLUMNA
            this.dataGridView1.RowHeadersVisible = false;

            /*Esconde las columnas*/
            this.dataGridView1.Columns["id_empleado"].Visible = false;
            this.dataGridView1.Columns["id_sucursal"].Visible = false;
            this.dataGridView1.Columns["id_jefe"].Visible = false;
            this.dataGridView1.Columns["cuenta_banco"].Visible = false;
            this.dataGridView1.Columns["estatus"].Visible = false;
            this.dataGridView1.Columns["nombre"].Visible = false;
            this.dataGridView1.Columns["apellidos"].Visible = false;
            this.dataGridView1.Columns["id_empresa"].Visible = false;
            this.dataGridView1.Columns["fecha_ingreso"].Visible = false;
            this.dataGridView1.Columns["dias_correspondientes"].Visible = false;
            this.dataGridView1.Columns["id_departamento"].Visible = false;

            //Renombra columnas
            this.dataGridView1.Columns["Nombre_apellidos"].HeaderText = "EMPLEADO";
            this.dataGridView1.Columns["departamento"].HeaderText = "DEPARTAMENTO";
            this.dataGridView1.Columns["puesto"].HeaderText = "PUESTO";
            this.dataGridView1.Columns["sueldo_mensual"].HeaderText = "SUELDO MENSUAL";
            this.dataGridView1.Columns["dias_correspondientes"].HeaderText = "DÍAS CORRESPONDIENTES";
            this.dataGridView1.Columns["sueldo_diario"].HeaderText = "SUELDO DIARIO";
            this.dataGridView1.Columns["fecha_ingreso"].HeaderText = "FECHA INGRESO";
            this.dataGridView1.Columns["cantidad_registrado_segurosocial"].HeaderText = "SUELDO DIARIO SEGURO SOCIAL";
            this.dataGridView1.Columns["sueldo_diario"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["sueldo_mensual"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["cantidad_registrado_segurosocial"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;


            //Ordena
            this.dataGridView1.Columns["Nombre_apellidos"].DisplayIndex = 0;

            //Alinea
            this.dataGridView1.Columns["Nombre_apellidos"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["departamento"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["puesto"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["dias_correspondientes"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["sueldo_mensual"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["dias_correspondientes"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["sueldo_diario"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["fecha_ingreso"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["dias_correspondientes"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

            //Tamaño
            this.dataGridView1.Columns["Nombre_apellidos"].Width = 200;
            this.dataGridView1.Columns["puesto"].Width = 130;

            this.dataGridView1.Columns["sueldo_mensual"].DefaultCellStyle.Format = "c";
            this.dataGridView1.Columns["sueldo_diario"].DefaultCellStyle.Format = "c";
            this.dataGridView1.Columns["cantidad_registrado_segurosocial"].DefaultCellStyle.Format = "c";
        }
        #endregion

        #region BOTONES
        private void btnRegresar_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void btnBuscar_Click(object sender, EventArgs e)
        {
            buscar();
        }

        
        #endregion

        #region  EVENTOS
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex != 0 && e.RowIndex >= 0)
            {
                obj1.Id_Empleado = Convert.ToInt32(dataGridView1[0, e.RowIndex].Value);
                obj1.SucId = dataGridView1[1, e.RowIndex].Value.ToString();
                obj1.IdJefe = Convert.ToInt32(dataGridView1[2, e.RowIndex].Value);
                obj1.Puesto = dataGridView1[5, e.RowIndex].Value.ToString();
                obj1.FechaIngreso = Convert.ToDateTime(dataGridView1[6, e.RowIndex].Value);
                obj1.Id_Departamento = Convert.ToInt32(dataGridView1[7, e.RowIndex].Value);
                obj1.Cuenta_Banco = dataGridView1[8, e.RowIndex].Value.ToString();
                obj1.Sueldo_Mensual = dataGridView1[11, e.RowIndex].Value.ToString();
                obj1.Cantidad_SeguroS = dataGridView1[12, e.RowIndex].Value.ToString();
                obj1.Salario_dia = dataGridView1[13, e.RowIndex].Value.ToString();
                obj1.Departamento = dataGridView1[15, e.RowIndex].Value.ToString();
                obj1.Nombre_completo = dataGridView1[16, e.RowIndex].Value.ToString();
                if (obj1.Cantidad_SeguroS.ToString() != "")
                {
                    frmInfonavit_Captura fic = new frmInfonavit_Captura(obj1, cmbSucursal.Text, 0);
                    fic.ShowDialog();
                    buscar();
                }
                else MessageBox.Show("SE REQUIERE EL SALARIO DIARIO REGISTRADO EN EL SEGURO SOCIAL", "ALERTA");
            }
        }

        private void cBTodas_CheckedChanged(object sender, EventArgs e)
        {
            if (cBTodas.Checked == true)
            {
                cmbSucursal.Enabled = false;
            }
            else if (cBTodas.Checked == false)
            {
                cmbSucursal.Enabled = true;
            }
        }

        private void frmInfonavit_Load(object sender, EventArgs e)
        {
            toolTip1.SetToolTip(btnBuscar, "BUSCAR");
            toolTip1.SetToolTip(btnRegresar, "REGRESAR");
            obj1.Buscar = "";
            obj1.SucId = "01";
            dataGridView1.DataSource = MI.ListaNoInfonavit(obj1.Buscar, obj1.SucId);
            propiedadesColumnas();
        }

        private void txtBuscar_TextChanged(object sender, EventArgs e)
        {
            buscar();
        }

        #endregion

        

        
        

   
    }
}
